// 模块化
// 每一个js文件就是一个模块
// 模块拥有自己独立的作用域，函数、类、变量等内容对模块外部不可见
// nodejs的应用程序都是由各种模块组成的
// 1.内置模块，安装了nodejs之后可以直接使用的模块（http url path fs ...）
// 2.第三方模块，通过npm安装的模块
// 3.自定义模块，我们自己的写功能模块

// nodejs使用的是commonjs模块化规范
// commonjs模块化规范，规定了模块内部如何实现，模块外部如何引用
// 每一个模块内部都有一个module对象，代表当前模块
// console.log( module );// {exports: {}, id: '.',....}
// console.log( module.exports );// {} 当前模块对外暴露的内容

// 当前模块引入其他模块在这组装（通常把该文件叫做入口文件）
// 入口文件：程序执行时，第一个执行的程序所在的文件

// require()方法会去加载并执行某个模块

// 加载模块（引入模块/导入模块）
let m1 = require('./module1.js');
let m2 = require('./module2.js');
// console.log( m1 );// m1就是模块1的 module.exports 属性
// console.log( m2 );// m2就是模块2的 module.exports 属性
m1.sum(2,3)
m2.jian(10,20);
